Modular polymorphic defunctionalization
نویسندگان
چکیده
منابع مشابه
Modular polymorphic defunctionalization
Defunctionalization is generally considered a whole-program transformation and thus incompatible with separate compilation. In this paper, we formalize a modular variant of defunctionalization which can support separate compilation for a functional programming language with parametric polymorphism. Our technique allows modules in a Haskell-like language to be separately defunctionalized and com...
متن کاملPolymorphic typed defunctionalization and concretization
Defunctionalization is a program transformation that eliminates functions as first-class values. We show that defunctionalization can be viewed as a type-preserving transformation of an extension of System F with guarded algebraic data types into itself. We also suggest that defunctionalization is an instance of concretization, a more general technique that allows eliminating constructs other t...
متن کاملOn Interaction, Continuations and Defunctionalization
In game semantics and related approaches to programming language semantics, programs are modelled by interaction dialogues. Such models have recently been used in the design of new compilation methods, e.g. in Ghica’s approach to hardware synthesis, or in joint work with Dal Lago on programming with sublinear space. This paper relates such semantically motivated nonstandard compilation methods ...
متن کاملModular and Polymorphic Set-Based Analysis: Theory and Practice
Set based analysis SBA produces good predictions about the behavior of functional and object oriented programs The analysis proceeds by inferring constraints that char acterize the data ow relationships of the analyzed program Experiences with Rice s program development environment which includes a static debugger based on SBA indicate that SBA can deal with programs of up to a couple of thousa...
متن کاملFrom Interpreter to Logic Engine by Defunctionalization
Starting from a continuation-based interpreter for a simple logic programming language, propositional Prolog with cut, we derive the corresponding logic engine in the form of an abstract machine. The derivation originates in previous work (our article at PPDP 2003) where it was applied to the lambda-calculus. The key transformation here is Reynolds’s defunctionalization that transforms a tail-r...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Computer Science and Information Systems
سال: 2014
ISSN: 1820-0214,2406-1018
DOI: 10.2298/csis130923030f